<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
                      "http://www.w3.org/TR/html4/strict.dtd"> 
<html> 
  <head> 
    <title>Capture Photo</title> 
 
    <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> 
    <script type="text/javascript" charset="utf-8"> 
 
    var pictureSource;   // picture source 
    var destinationType; // sets the format of returned value  
 
    // Wait for PhoneGap to connect with the device 
    // 
    function onLoad() { 
        document.addEventListener("deviceready",onDeviceReady,false); 
    } 
 
    // PhoneGap is ready to be used! 
    // 
    function onDeviceReady() { 
        pictureSource=navigator.camera.PictureSourceType; 
        destinationType=navigator.camera.DestinationType; 
    } 
 
    // Called when a photo is successfully retrieved 
    // 
    function onPhotoDataSuccess(imageData) { 
      // Uncomment to view the base64 encoded image data 
      // console.log(imageData); 
 
      // Get image handle 
      // 
      var smallImage = document.getElementById('smallImage'); 
 
      // Unhide image elements 
      // 
      smallImage.style.display = 'block'; 
 
      // Show the captured photo 
      // The inline CSS rules are used to resize the image 
      // 
      smallImage.src = "data:image/jpeg;base64," + imageData; 
    } 
 
    // Called when a photo is successfully retrieved 
    // 
    function onPhotoURISuccess(imageURI) { 
      // Uncomment to view the image file URI  
      // console.log(imageURI); 
 
      // Get image handle 
      // 
      var largeImage = document.getElementById('largeImage'); 
 
      // Unhide image elements 
      // 
      largeImage.style.display = 'block'; 
 
      // Show the captured photo 
      // The inline CSS rules are used to resize the image 
      // 
      largeImage.src = imageURI;
    } 
 
    // A button will call this function 
    // 
    function capturePhoto() { 
      // Take picture using device camera and retrieve image as base64-encoded string 
      //navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50 }); 
      navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,destinationType: destinationType.FILE_URI});
    } 
 
    // A button will call this function 
    // 
    function capturePhotoEdit() { 
      // Take picture using device camera, allow edit, and retrieve image as base64-encoded string   
      navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 20, allowEdit: true });  
    } 
 
    // A button will call this function 
    // 
    function getPhoto(source) { 
      // Retrieve image file location from specified source 
      navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50,  
        destinationType: destinationType.FILE_URI, 
        sourceType: source }); 
    } 
 
    // Called if something bad happens. 
    //  
    function onFail(message) { 
     // document.write('Failed because: ' + message); 
		var element = document.getElementById('result'); 
        element.innerHTML = 'Failed because: ' + message + '<hr />'; 
    } 
 
    </script> 
  </head> 
  <body onload="onLoad()"> 
    <button onclick="capturePhoto();">Capture Photo</button> <br> 
    <button onclick="capturePhotoEdit();">Capture Editable Photo</button> <br> 
    <button onclick="getPhoto(pictureSource.PHOTOLIBRARY);">From Photo Library</button><br> 
    <button onclick="getPhoto(pictureSource.SAVEDPHOTOALBUM);">From Photo Album</button><br> 
    <img style="display:none;width:60px;height:60px;" id="smallImage" src="" />
    <p id="result"></p>  
    <img style="display:none;" id="largeImage" src="" /> 
  </body> 
</html> 
